#!/usr/bin/env python
# @coding  : utf-8
# @File    : t6.py
# @Time    : 2022/4/6 23:39
# @Author  : xdd
# @Software: PyCharm
# @desc :$
import numpy as np

import matplotlib as mpl
import matplotlib.pyplot as plt

mpl.rcParams['axes.unicode_minus'] = False  # 用来正常显示负号
mpl.rcParams['font.sans-serif'] = ['SimHei']  # 用来正常显示中文标签
plt.rcParams['font.sans-serif'] = ['SimHei']  # 用来正常显示中文标签

# 画factorData，xstickslabel的名字保存于xaxislabel。
# 首先进行排序，如果从小到大排序，argsort参数是直接factorData，如果从大到小排序，使用-factorData。
factorData = np.random.rand(10)
xaxislabel = np.array([str(i) for i in range(10)])
x = xaxislabel[np.argsort(-factorData)]
y = factorData[np.argsort(-factorData)]
plt.figure(figsize=(26, 16))
plt.xticks(np.arange(len(xaxislabel)), x, rotation=270, fontsize=18)  # xticks旋转270度显示
plt.bar(np.arange(len(xaxislabel)), y)
# 不会直接画plt（x,y)，直接这样画的话横轴的sticklabel的顺序就是根据它的alphabet顺序。
# 所以分别对应一个np.arrange画。
plt.ylabel('y轴名称', fontsize=18)
plt.xlabel('x轴名称', fontsize=18)
plt.title('图片标题', fontsize=18)
plt.show()